From c8b9c6c18289e08efafa89b28c06d124e9be36cb Mon Sep 17 00:00:00 2001 From: "kfraser@localhost.localdomain" Date: Mon, 5 Mar 2007 14:39:03 +0000 Subject: [PATCH] Fix crash in heap allocator when Xen 'zone' is empty. Signed-off-by: Keir Fraser --- xen/common/page_alloc.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c index b1d7647e47..f4159373da 100644 --- a/xen/common/page_alloc.c +++ b/xen/common/page_alloc.c @@ -342,8 +342,8 @@ static struct page_info *alloc_heap_pages( unsigned int zone_lo, unsigned zone_hi, unsigned int cpu, unsigned int order) { - unsigned int i, j, node = cpu_to_node(cpu), num_nodes = num_online_nodes(); - unsigned int zone, request = (1UL << order); + int i, j, zone, node = cpu_to_node(cpu), num_nodes = num_online_nodes(); + unsigned long request = 1UL << order; struct page_info *pg; ASSERT(node >= 0); @@ -426,7 +426,7 @@ static void free_heap_pages( /* Merge chunks as far as possible. */ while ( order < MAX_ORDER ) { - mask = 1 << order; + mask = 1UL << order; if ( (page_to_mfn(pg) & mask) ) { -- 2.30.2